<?php

namespace Sisesporte\Entity;

use Doctrine\ORM\Mapping as ORM,
        Doctrine\Common\Collections\ArrayCollection;

/**
 * @ORM\Entity
 * @ORM\Table(name="tipo_faixa_etaria")
 * @ORM\Entity(repositoryClass="Sisesporte\Repository\TipoFaixaEtariaRepository")
 */
class TipoFaixaEtaria {

    public function __construct($options = null) {
        Configurator::configure($this,$options);
        $this->tipoFaixaEtaria = new ArrayCollection;
    }
    
    /**
     * @var integer $sqTipoFaixaEtaria
     * @ORM\Column(name="sq_tipo_faixa_etaria", type="integer", nullable=false)
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $sqTipoFaixaEtaria;
    
    /**
     * @var string $noTipoFaixaEtaria
     * @ORM\Column(name="no_tipo_faixa_etaria", type="text", nullable=false)
     */
    protected $noTipoFaixaEtaria;
    
    /**
     * @var bigint $nuIdadeInicial
     * @ORM\Column(name="nu_idade_inicial", type="bigint", nullable=true)
     */
    protected $nuIdadeInicial;
    
    /**
     * @var bigint $nuIdadeFinal
     * @ORM\Column(name="nu_idade_final", type="bigint", nullable=true)
     */
    protected $nuIdadeFinal;
    
    /**
     * @var string $inVisibilidade
     * @ORM\Column(name="in_visibilidade", type="text", nullable=false)
     */
    protected $inVisibilidade;
    
    /**
     * @var boolean $stAtivo
     * @ORM\Column(name="st_ativo", type="boolean", nullable=false)
     */
    protected  $stAtivo;
    
     /**
     * @ORM\OneToMany(targetEntity="Sisesporte\Entity\Turma", mappedBy="sq_tipo_faixa_etaria")
     */
    protected $tipoFaixaEtaria;

    public function getSqTipoFaixaEtaria() {
        return $this->sqTipoFaixaEtaria;
    }

    public function getNoTipoFaixaEtaria() {
        return $this->noTipoFaixaEtaria;
    }

    public function setNoTipoFaixaEtaria($noTipoFaixaEtaria) {
        $this->noTipoFaixaEtaria = $noTipoFaixaEtaria;
        return $this;
    }

    public function getNuIdadeInicial() {
        return $this->nuIdadeInicial;
    }

    public function setNuIdadeInicial($nuIdadeInicial) {
        $this->nuIdadeInicial = $nuIdadeInicial;
        return $this;
    }

    public function getNuIdadeFinal() {
        return $this->nuIdadeFinal;
    }

    public function setNuIdadeFinal($nuIdadeFinal) {
        $this->nuIdadeFinal = $nuIdadeFinal;
        return $this;
    }

    public function getInVisibilidade() {
        return $this->inVisibilidade;
    }

    public function setInVisibilidade($inVisibilidade) {
        $this->inVisibilidade = $inVisibilidade;
        return $this;
    }

    public function getStAtivo() {
        return $this->stAtivo;
    }

    public function setStAtivo($stAtivo) {
        $this->stAtivo = $stAtivo;
        return $this;
    }

    public function getTipoFaixaEtaria() {
        return $this->tipoFaixaEtaria;
    }

    public function setTipoFaixaEtaria($tipoFaixaEtaria) {
        $this->tipoFaixaEtaria = $tipoFaixaEtaria;
        return $this;
    }

    public function __toString() {
        return $this->noTipoFaixaEtaria;
    }
    
    public function toArray() {
        return array(
            'sqTipoFaixaEtaria'=>$this->getSqTipoFaixaEtaria(),
            'noTipoFaixaEtaria'=>$this->getNoTipoFaixaEtaria(),
            'nuIdadeInicial'=>$this->getNuIdadeInicial(),
            'nuIdadeFinal'=>$this->getNuIdadeFinal(),
            'inVisibilidade' => $this->getInVisibilidade(),
            'stAtivo'=>$this->getStAtivo(), 
            'tipoFaixaEtaria'=>  $this->getTipoFaixaEtaria(), 
            );
    }
}
